The present invention relates, in general, to information processing system organization and, in particular, to static presentation processing (e.g., for a printer).
A printer command language is a human-readable computer language for creating a document that is intended to be printed on a printer. Impress, Postscript, HP PCL, and HP GL are examples of printer command languages. A document created in a human-readable printer command language may require a conversion from machine-readable format before the document may be printed. A binary format is often used as the machine-readable format.
A document is often made up of different sections, or data files. Each data file is comprised of one or more data records, where the data records comprise the image of that particular data file. Each data record has associated therewith a control record. A control record controls various aspects of its corresponding data record such as font type and font size. Each data record and each control record includes a sequence number and a check-sum number. The sequence number allows a user to determine the sequence of the data records and the control records. The check-sum number, which was created from the content of the corresponding data record or control record, allows the user to detect an error in the data record, or control record.
A prior art method of printing a document created using the Impress printer command language requires the use of a computer between the computer on which the document was created and the printer. Such a method has numerous drawbacks. First, a second computer is required. Second, the prior art method only allows the user to print the entire document and not the pages on which may be found a particular data file. Therefore, a problem with the printing of one page in the document (e.g., smeared ink, wrinkled paper, etc.) would require the entire document to be reprinted. There are numerous applications where it is undesirable to print more than one of a document (e.g., lottery tickets, deeds, titles, secure-access material, etc.). Third, the prior art method discards the sequence numbers and the check-sum numbers associated with the data records and the control records and, therefore, prevents the prior art method from providing accountability and error detection of what was printed. The present method overcomes all of the problems of the prior art method.
U.S. Pat. No. 4,679,153, entitled xe2x80x9cPRINTING SYSTEMS FOR TYPESETTER EMULATION,xe2x80x9d is an example of the prior art printing method described above that requires a second computer in addition to the computer on which a document is created, only allows the user to print the entire document and not the pages on which may be found a particular data file, and discards the sequence numbers and the check-sum numbers associated with the data records and the control records. Therefore, U.S. Pat. No. 4,679,153 does not include accountability and error detection as does the present invention. U.S. Pat. No. 4,679,153 is hereby incorporated by reference into the specification of the present invention.
U.S. Pat. No. 5,293,466, entitled xe2x80x9cMETHOD AND APPARATUS FOR SELECTING INTERPRETER FOR PRINTER COMMAND LANGUAGE BASED UPON SAMPLE OF PRINT JOB TRANSMITTED TO PRINTER,xe2x80x9d is another example of the prior art printing method described above that only allows the user to print the entire document and not the pages on which may be found a particular data file, and discards the sequence numbers and the check-sum numbers associated with the data records and the control records. U.S. Pat. No. 5,293,466 incorporates the functionality of the second computer in the prior art method described into the printer but does not eliminate it. Therefore, U.S. Pat. No. 5,293,466 does not include accountability and error detection as does the present invention. U.S. Pat. No. 5,293,466 is hereby incorporated by reference into the specification of the present invention.
It is an object of the present invention to print a portion of a document in an accountable manner.
It is another object of the present invention to print a portion of a document in an accountable manner with error detection.
The present invention is method of printing in an accountable manner with error detection.
The first step of the method isgNorm:
I receiving a document in a human-readable printer command language. The document includes at least one data file. A data file includes at least one data record and at least one control record. Each data record includes an image in the document, a sequence number, and a check-sum number. Each data record is associated with a control record. Each control record includes a font type, a font size, a sequence number, and a check-sum number.
The second step is generating a table of contents that lists each data file in the document and each page on which each data file would appear if that data file was printed.
The third step is selecting a data file to print.
The fourth step is determining on which pages the selected data file would appear if printed.
The fifth step is converting each data record and each control record, including the corresponding sequence number and the check-sum number, on the pages identified in the fourth step from the human-readable printer command language of the document to a machine-readable format that a printer may print.
The sixth step is checking each sequence number and check-sum number converted in the fifth step to the corresponding sequence number and check-sum number in the document received to see if the data records and the control records converted in the fifth step are in the same sequence as in the document received and if any error occurred as a result of the fifth step, reporting any discrepancy, and stopping if any discrepancy exists.
The seventh step is sending the result of the fifth step to the printer for printing.
The eighth step is comparing how many pages were sent to the printer in the seventh step to how many pages were actually printed by the printer, reporting any discrepancy, and stopping if any discrepancy exists.
The ninth step is comparing the sequence numbers and the check-sum numbers for the data records and the control records sent to the printer in the seventh step to the corresponding sequence numbers and check-sum numbers in the document as received, reporting any discrepancy, and stopping if any discrepancy exists.
The tenth step is returning to the third step if it is desired to print another data file.
The eleventh, and last, step is commanding the printer to print a report of what was printed.